A syntactic approach to type soundness. Information and Computation